// 仓颉语言计算器（支持加减乘除）
import "io"
import "math"

func main() {
    io.println("====== 仓颉计算器 ======")
    io.println("支持运算：+（加）、-（减）、*（乘）、/（除）")
    io.println("输入格式：数字1 运算符 数字2（例：3 + 5）")
    io.println("输入 'q' 退出程序\n")

    loop {
        // 读取用户输入
        input := io.input("> ")
        if input == "q" {
            io.println("程序退出，感谢使用！")
            break
        }

        // 解析输入（分割数字和运算符）
        parts := str.split(input, " ")
        if len(parts) != 3 {
            io.println("输入格式错误！请按 数字 运算符 数字 的格式输入（例：3 + 5）\n")
            continue
        }

        // 转换数字（支持整数和浮点数）
        num1 := float.parse(parts[0])
        num2 := float.parse(parts[2])
        op := parts[1]

        // 校验数字有效性
        if num1 == nil || num2 == nil {
            io.println("输入的数字无效！请输入合法的整数或浮点数\n")
            continue
        }

        // 执行运算
        result := 0.0
        validOp := true
        match op {
            "+" => result = num1! + num2!
            "-" => result = num1! - num2!
            "*" => result = num1! * num2!
            "/" => {
                if num2! == 0 {
                    io.println("错误：除数不能为0！\n")
                    validOp = false
                } else {
                    result = num1! / num2!
                }
            }
            _ => {
                io.println("运算符无效！仅支持 +、-、*、/ 四种运算\n")
                validOp = false
            }
        }

        // 输出结果（保留2位小数，优化显示）
        if validOp {
            io.printf("结果：%.2f\n\n", result)
        }
    }
}